//package des.yordan.mihaylov;
//
///**
// * DES Assignment 1
// * 
// * @author Yordan Mihaylov
// * @version 2011/06/05
// */
//
//public class DES {
//
//	private SimState simState;
//	private SimEvent event;
//
//	public DES(long interArrivalTime, long serviceCompletionTime,
//			long simulationDuration) {
//
//		simState = new SimState(interArrivalTime, serviceCompletionTime,
//				simulationDuration);
//
//		SimEvent.setSimState(simState);
//
//		simState.enqueueEvent(new CustomerArrival(0)); // init event
//		simState.enqueueEvent(new SimulationTermination(simulationDuration)); // simulation
//																				// termination
//																				// event
//	}
//
//	public void simulateSingleServer() {
//
//		event = simState.getNextEvent();
//		if (null == event) {
//			System.out.println("Queue is empty!");
//			return;
//		}
//
//		while (!simState.isStop() && !(event instanceof SimulationTermination)) {
//
//			long simTm = event.getSimulationTime();
//			if (simTm > simState.getNow()) {
//				simState.setNow(simTm);
//			} else if (simTm < simState.getNow()) {
//				System.out
//						.println(simState.getNow()
//								+ ": ERROR!!! This event should have been processed in the past!");
//			}
//
//			event.process();
//
//			event = simState.getNextEvent();
//		}
//	}
//
//	public static void main(String[] args) {
//
//		// check arguments
//		if (3 != args.length) {
//			System.out
//					.println("missing arguments: \"java DES [interArrivalTime] [serviceCompletion] [simulationDuration]\"");
//			return;
//		}
//
//		DES des1 = new DES(Integer.parseInt(args[0]),
//				Integer.parseInt(args[1]), Integer.parseInt(args[2]));
//		des1.simulateSingleServer();
//		des1.simState.printReport();
//	}
//
//}
